package utils

import (
	"fmt"
	"math/rand"
	"time"
)

// GenerateInviteCode 生成一个6位数数字组成的拼团邀请码
func GenerateInviteCode() string {
	return fmt.Sprintf("%06d", time.Now().UnixNano()%1000000)
}

// GenerateRandomNumber 生成指定位数的随机数字
func GenerateRandomNumber(digits int) int {
	if digits <= 0 {
		digits = 6 // 默认生成6位随机数
	}
	
	// 初始化随机数种子
	rand.Seed(time.Now().UnixNano())
	
	// 计算最小值和最大值
	min := 1
	for i := 1; i < digits; i++ {
		min *= 10
	}
	max := min * 10 - 1
	
	// 生成指定位数的随机数
	return min + rand.Intn(max-min+1)
}